Picking the one right tool
2023-09-16
Documenting the story of a project
Among other features , version control enables time travel
i.e. interacting with earlier phases of a project
Why — Version control enables reproducibility
What — The ability to recreate the results, analyses, and figures from a study or paper using the original tools
How — Do everything with code
“You pick the one right tool” – Anton Chigurh
No Country for Old Men by Cormac McCarthy. 2005
Llewelyn Moss: Protagonist acquires a satchel of cash that does not belong to him. There are no people claiming the cash for miles around. Finders Keepers
Anton Chigurh: Hired to retrieve the money. Has strong feelings about accomplishing his goals
Carson Wells: Hired to assist Chigurh, unbeknownst to Chigurh
Ed Tom Bell: Trying to do his best amidst a difficult situation where there is no easy solution
git and GitHub
Chigurh and Wells
Each part of the pair benefits the other
The relationship between Git and GitHub is not as dangerous. Git is a tool for version control, and GitHub is a remote hub (cloud / web) for storing and managing Git repositories. Git and GitHub work together to provide a powerful platform for collaboration.
Git is an emotionless, powerhouse application built to exhibit an indefatigable and extensible ability
Tracking how files in a project folder change over time
Time-travel to earlier stages of the entire project
Supports modern reproducibility better than other file synchronization approaches
Portable, open-source application that runs on any any computer LFS, tracking any file thereof, in any enterprise including any university
+
Many free gui clients
Works on any OS
A workhorse
Typically, you will use only 4-8 commands
Pays huge dividends per investment
△
Command-line UX
Can be a challenge to install/configure
Initial learning curve can feel steep (short hill)
Extensible
Use Git for projects: versioning, collaboration, and/or reproducibility. Choose the right tools for the job
♠
Preservation requires thought and effort
Posterity typically requires more than luck and usually demands acts of mindfulness
♠
Consciously track the organic versioning of your project